/*
 * head.h
 * 项目头文件，包含所有必要的库引用和全局声明
 * 包含 OpenCV 和 FFmpeg 的头文件
 * 定义全局变量和函数声明
 */

#pragma once

#include <opencv2/opencv.hpp>
#include <iostream>
#include <string.h>
#include <fstream>
#include <strstream>
#include <vector>
#include <ctime>
#include <locale>  
#include <codecvt>  
#include <windows.h>  
#include <filesystem>
#include "image2bin.h"

// ffmpeg ͷļ
extern "C" {

#include <libavdevice/avdevice.h>
#include <libavcodec/avcodec.h>
#include <libavfilter/avfilter.h>
#include <libavformat/avformat.h>
#include <libavutil/mathematics.h>
#include <libavutil/imgutils.h>
#include <libavutil/time.h>
#include <libavutil/audio_fifo.h>
#include <libswresample/swresample.h>
#include <libswscale/swscale.h>

}

namespace fs = std::filesystem;
using namespace std;
using namespace cv;

// ffmpeg ·
extern const string ffmpegPath;
// Ƶ·
extern const string savePath;